#ifndef CONFIRMDIALOG_H
#define CONFIRMDIALOG_H

#include "ElaContentDialog.h"
#include "ElaText.h"
#include <QVBoxLayout>
#include <QDebug>

class ConfirmDialog : public ElaContentDialog
{
    Q_OBJECT
  public:
    ConfirmDialog(QWidget* parent) : ElaContentDialog(parent)
    {
        setWindowTitle("确认操作");

        // 创建自定义内容
        auto* contentWidget = new QWidget();
        auto* layout = new QVBoxLayout(contentWidget);

        auto* title = new ElaText("确认删除", this);
        title->setTextStyle(ElaTextType::Title);

        auto* message = new ElaText("您确定要删除这个项目吗？此操作不可撤销。", this);
        message->setTextStyle(ElaTextType::Body);

        layout->addWidget(title);
        layout->addSpacing(10);
        layout->addWidget(message);
        layout->addStretch();

        setCentralWidget(contentWidget);

        // 设置按钮文本
        setLeftButtonText("取消");
        setMiddleButtonText("详情");
        setRightButtonText("删除");

        // 调整对话框大小
        resize(400, 200);
    }

  protected:
    void onLeftButtonClicked() override
    {
        // 取消操作 - 默认行为已处理关闭
        qDebug() << "用户取消了删除操作";
    }

    void onMiddleButtonClicked() override
    {
        // 显示详情
        qDebug() << "显示删除项目详情";
        // 可以在这里打开另一个对话框显示详情
    }

    void onRightButtonClicked() override
    {
        // 执行删除操作
        qDebug() << "执行删除操作";
        // 这里添加实际的删除逻辑
        // 父类会自动处理关闭动画
    }
};

#endif  // CONFIRMDIALOG_H